﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BackupLib.Targets
{
    internal interface IBackupTarget
    {
        string CurrentTargetRoot { get; set; }
        bool TargetSupportsHardlinks { get;  }
        bool TargetSupportsLongNames  { get;  }
        bool TargetSupportsACL { get; }
        bool TargetSupportsADS { get;  }
        bool CopyACL { get; set; }
        bool CopyADS { get; set; }
        string SourceRoot { get; set; }
        string LastTargetRoot { get; set; }

        void BackupFile(string sourceRelative);

        void BackupFile(string sourceRelative, bool noChange);

        void CreateDirectory(string path);
    }
}
